Everything about Wine Software totally explained
Wine is a
software application which aims to allow
Unix-like computer
operating systems on the
x86 architecture to execute programs written for
Microsoft Windows. Wine also provides a
software library known as
Winelib which developers can
compile Windows applications against to help
port them to Unix-like systems.
The name 'Wine' derives from the
recursive acronym Wine Is Not an Emulator. While the name sometimes appears in the forms "WINE" and "wine", the project developers have agreed to standardize on the form "Wine".
The Wine developers released the first
beta version of Wine (version 0.9) on
October 25 2005 after 12 years of development. Version 1.0 is expected in June 2008. Released under terms of the
GNU Lesser General Public License (LGPL), Wine is
free software.
History
Bob Amstadt (the initial project leader) and Eric Youngdale started the Wine project in 1993 as a way to run Windows applications on
Linux. Inspired by
Sun Microsystems' Public Windows Initiative and
Wabi (an attempt to get Windows' API fully reimplemented on the public domain, a project later shot down by Microsoft in 1996) for the
Solaris operating system, it originally targeted Windows 3.x (
16-bit)
application software, although it
currently focuses primarily on the dominant 32-bit applications. The project originated in discussions on
Usenet in [news:comp.os.linuxcomp.os.linux] in June 1993.
Alexandre Julliard has led the project since 1994.
Rather than acting as a full
emulator, Wine implements a
compatibility layer, providing alternative implementations of the
DLLs that Windows programs call, and processes to substitute for the
Windows NT kernel.
The Wine developers write the software primarily for Linux, but the
Mac OS X,
FreeBSD and
Solaris ports are currently well-maintained. Wine is available for other BSD distributions like OpenBSD and NetBSD through the ports collection of OpenBSD and NetBSD pkgsrc respectively. Although outdated, Wine is also available for Microsoft Windows.
The project has proved time-consuming and difficult for the developers, mostly because of incomplete and incorrect
documentation of the
Windows API. While
Microsoft has documented most Win32
functions, some areas such as
file formats and
protocols have no official Microsoft specification. There are also undocumented low-level functions and obscure
bugs that Wine must duplicate precisely in order to allow some applications to work properly. Consequently, the Wine team has had to
reverse engineer many function calls and file formats in such areas as
thunking.
The involvement of
Corel for a time assisted the project, chiefly by employing Julliard and others to work on it. Corel had an interest due to the porting of
WordPerfect Office, its
office suite, to Linux. However, after Microsoft made major investments in the company, Corel cancelled all Linux-related projects and the Wine effort stopped.
CodeWeavers now employs Julliard and many other Wine developers to work on Wine and on
CrossOver, CodeWeavers' supported version of Wine utilizing some additional proprietary components.
The Wine project originally released Wine under the same
MIT License as the X Window System, but owing to concern about
proprietary versions of Wine not contributing their changes back to the core project, work as of March 2002 has used the LGPL for its licensing.
The first release candidate for version 1.0 was released on May 9th, 2008. Currently, Wine is in a code freeze, as the developers are working to fix the bugs for the official 1.0 release expected in June 2008.
Functionality
As of mid-
2007, Wine runs some software with good stability and most software with minor issues. Most native Microsoft Windows DLLs necessary for the execution of 32-bit Windows binaries have compatible Wine counterparts. The developers of the
Direct3D portions of Wine have continued to implement new features such as
pixel shaders to increase game support. Wine can also use native DLLs directly, thus increasing functionality, but then a license for Windows is needed unless the DLLs were distributed with the application itself.
winecfg is a GUI configuration utility included with Wine. winecfg makes configuring Wine easier by making it unnecessary to edit the registry directly.
64-bit applications
Wine can't currently run 64-bit Windows applications; however, it can run on 64-bit operating systems. Since almost all Windows applications are currently available in 32-bit versions, support for 64-bit Windows applications is a low priority, planned for after version 1.0.
On a 64-bit Linux system, support for 32-bit Windows applications is handled by linking with 32-bit versions of Wine's
shared library dependencies.
Usage
In a 2007 survey by desktoplinux.com of 38500 Linux desktop users, 31.5% of respondents reported using Wine to run Windows applications.
This plurality was larger than all
virtualization programs combined, as well as larger than the 27.9% who reported not running Windows applications.
Third-party applications
Some applications, in order to work properly with Wine, require more tweaking than simply installing the application, such as manually configuring Wine to use certain Windows DLLs. The Wine project doesn't integrate such workarounds into the Wine codebase, instead preferring to focus solely on improving Wine's implementation of the Windows API. While this approach focuses Wine development on long-term compatibility, it makes it difficult for users to run applications which can run using workarounds. Consequently, many third party applications have been created to ease the use of these applications which don't work "out of the box" within Wine itself. The Wine wiki maintains a page of current and obsolete third party applications.
Tools for Wine
Wine-Doors is an application-management tool for the
GNOME desktop which adds functionality to Wine. Wine-Doors is an alternative to WineTools which aims to improve upon WineTools' features and extend on the original idea with a more modern design approach.
WineBot is an application-management tool which should act in a similar way as native Linux package managers like apt/dpkg/rpm. The project aims for data compatibility with Wine-Doors, in addition to providing a platform to track the hacks necessary to install certain applications and provide a framework for automated regression testing for the Wine project.
WineTricks is a quick and dirty hack style script to install some basic components required for Wine to run correctly.
IES4LINUX A utility to install all IE's right from version 4 to 6 and soon will also support IE7, currently IE7 engine is installed if you select it (in beta stage)
WineLocale An extension utility to enable Wine to run windows programs that require non-unicode character support, like Japanese, Korean, Arabic, Chinese, Greek. There is some documentation on the Ubuntu forums to use this tool.
PlayOnLinux is an application to ease the installation of Windows games using Wine. It uses an online database of scripts to apply to different games that need special configurations and if the game isn't in the database, a manual installation can be performed. Aside from games, any other programs can also be installed and each one is put in a different container (WINEPREFIX) to prevent interference of one program in another and provide isolation, the same way that
CrossOver Office's bottles work.
Other versions of Wine
The core Wine development aims at a correct implementation of the Windows API as a whole and has sometimes lagged in some areas of compatibility with certain applications. Direct3D, for example, remained unimplemented until 1998, although newer releases have had an increasingly complete implementation.
CodeWeavers markets
CrossOver specifically for running
Microsoft Office and other major Windows applications including some games. CodeWeavers employs Alexandre Julliard to work on Wine and contributes most of its code to the Wine project under the LGPL. CodeWeavers also released a new version called
Crossover Mac for Intel-based
Apple Macintosh computers on
January 10,
2007.
(External Link
).
TransGaming Technologies produces the proprietary
Cedega software. Formerly known as WineX, Cedega represents a
fork from the last MIT-licensed version of Wine. TransGaming optimises Cedega for running Windows
computer games and runs on a
subscription business model.
Transgaming has also produced
Cider, a Wine library for
Apple-Intel architecture Macintoshes. Instead of being an end-user product, Cider (like Winelib) is a
wrapper allowing developers to adapt their games to run natively on Intel
Mac OS X without any changes in source code.
Other projects using Wine source code include:
- ReactOS, a project to write an operating system compatible with Windows NT down to the device driver level.
- Darwine, a port of the Wine libraries to Darwin and Mac OS X. Darwine originally aimed at compiling Windows source code to Mach-O binaries. With the advent of Apple-Intel architecture, Darwine began running Win32 binaries in x86 Darwin and has approached version parity with the Wine trunk. The Darwine project also continues progress on PowerPC by combining Wine with the QEMU x86 emulator.
- Odin, a project to run Win32 binaries on OS/2 or convert them to OS/2 native format. The project also provides the Odin32 API to compile Win32 programs for OS/2.
- E/OS, a project attempting to allow any program designed for any operating system to be run without the need to actually install any other operating system.
- Rewind, a defunct MIT-licensed fork of the last MIT-licensed version of Wine.
- Parallels, a proprietary product that uses some Wine code for its DirectX handling.
Microsoft and Wine
Microsoft has generally not made public statements about Wine. However, the
Microsoft Update software will block updates to Microsoft application software running in Wine-based environments. On
February 16 2005, Ivan Leo Puoti discovered that Microsoft had started checking the
Windows registry for the Wine configuration key and would block the Windows Update for any component. Puoti wrote, ". . . even if this is only an initial attempt, they appear to want to discriminate against Wine users. While this may be acceptable for operating system components/updates, this is probably a violation of
anti-trust law for all other downloads. It's also the first time Microsoft has acknowledged the existence of Wine."
The
Windows Genuine Advantage (WGA) system also checks for existence of Wine registry keys. The WGA
FAQ states that WGA, by design, won't run in Wine, as Wine doesn't constitute "genuine Windows". When WGA validation detects Wine running on the system, it'll notify users that they're running non-genuine Windows and disallow genuine Windows downloads for that system. Despite this, some reports have circulated of the WGA system working in Wine, although this loophole has now been closed with the next WGA component update. In the case of
Internet Explorer 7 and
Windows Media Player, Microsoft has since removed the WGA requirements.
Further Information
Get more info on 'Wine Software'.
|
External Link Exchanges
Do you know how hard it is to get a link from a large encyclopaedia? Well we're different and will prove it. To get a link from us just add the following HTML to your site on a relevant page:
<a href="http://wine__software.totallyexplained.com">Wine (software) Totally Explained</a>
Then simply click through this link from your web page. Our crawlers will verify your link, extract the title of your web page and instantly add a link back to it. If you like you can remove the words Totally Explained and embed the link in article text.
As long as your link remains in place, we'll keep our link to you right here. Please play fair - our crawlers are watching. Your site must be closely related to this one's topic. Any kind of spamming, dubious practises or removing the link will result in your link from us being dropped and, potentially, your whole site being banned. |